$().ready(function() {
	initDictDatas();
	validateRule();
	loadShopImgs();
	initFileUpload();
	laydate.render({
		elem: '#businessHoursS',
		type: 'time'
	});
	laydate.render({
		elem: '#businessHoursE',
		type: 'time'
	});
});
//构建字典数据
function initDictDatas(){

	var thatDictFields = window.parent.dictFields;
	var thatDictkeys = window.parent.dictKeys;
	var thatDictDatas = window.parent.dicDatas;

	//省
	$('#provinceNum').bootstrapSelect({
		url:ctx+'plat/hyBaseArea/list/100000',
		valueField: 'areaNum',
		textField: 'areaName',
		placeholder: "请选择所属省",

		onChange:function(value){
			// 当选择为空时,不触发
			if(value == null || value == ''){
				return false;
			}
			//级联市
			$('#cityNum').bootstrapSelect({
				url:ctx+'plat/hyBaseArea/list/'+value,
				valueField: 'areaNum',
				textField: 'areaName',
				placeholder: "请选择所属市"
			});
			$('#cityNum').selectpicker('refresh');
		}
	});
	$('#cityNum').bootstrapSelect({
		valueField: 'areaNum',
		textField: 'areaName',
		placeholder: "请选择所属市"
	});
	$('#platId').bootstrapSelect({
		url : ctx+'/plat/platInfo/listPlatDict',
		valueField: 'platId',
		textField: 'platName',
		placeholder: "请选择所属平台",
		onChange:function(value){
			if(value == null || value == ''){
				return false;
			}
			//级联商户
			$('#merchantId').bootstrapSelect({
				url:ctx+'/plat/merchantInfo/listMerchantDict/'+value,
				valueField: 'merchantId',
				textField: 'merchantName',
				placeholder: "请选择所属商户"
			});
			//bootstrap-select使用规则是先执行操作然后refresh
			$('#merchantId').selectpicker('refresh');
		}
	});
	$('#merchantId').bootstrapSelect({
		valueField: 'merchantId',
		textField: 'merchantName',
		placeholder: "请选择所属商户"
	});
//	$('#shopFlag').bootstrapSelect({
//		data:thatDictDatas['shopFlag'],
//		valueField: 'value',
//		textField: 'name',
//		placeholder: "请选择状态"
//	});
	$('#provinceNum').bootstrapSelect('setValue',provinceNumValue);
	$('#cityNum').bootstrapSelect('setValue',cityNumValue);
	$('#platId').bootstrapSelect('setValue',platId);
	$('#merchantId').bootstrapSelect('setValue',merchantId);
//	$('#shopFlag').bootstrapSelect('setValue',shopFlag);
}
$.validator.setDefaults({
	submitHandler : function() {
		update();
	}
});
var shopImgs ;
function loadShopImgs(){
	$.ajax({
		type : "get",
		url : ctx+"plat/shopInfo/getShopImgs/"+$('#shopId').val(),
		async : false,
		error : function(request) {
		},
		success : function(data) {
			shopImgs = data;
		}
	});
}
var tempFile = {};
// 怎么获取反显的图片previewId 并和图片id进行关联?
//反显预览的图片,不支持使用移除,只能点击图片上的删除小按钮
var removeImgUrl = ctx+'common/sysFile/removeFormFile';
function initFileUpload(){
	var initialPreview = new Array();
	var initialPreviewConfig = new Array();
	for(var i = 0;i<shopImgs.length;i++){
		var fileDO = shopImgs[i];
		initialPreview.push(fileDO.url);
		var filePreview = {caption: fileDO.fileName, size: fileDO.fileSize, width: "120px", url: removeImgUrl, key: fileDO.id};
		initialPreviewConfig.push(filePreview);
//		tempFile[previewId] = fileId;

	}

	$("#shopImgs").fileinput({
		uploadUrl: ctx+'common/sysFile/upload',
		fileActionSettings:{showDrag:false},
		overwriteInitial: false,
		initialPreviewAsData: true,
		initialPreview:initialPreview,
		initialPreviewConfig:initialPreviewConfig,
//		deleteUrl:'/plat/shopInfo/removeFile',
		removeFromPreviewOnError:true, //当选择的文件不符合规则时，例如不是指定后缀文件、大小超出配置等，选择的文件不会出现在预览框中，只会显示错误信息
		validateInitialCount:true,//开启校验文件数量限制
		maxFileCount: 3,//允许最多上传文件数量
		//dropZoneEnabled: false,//是否显示拖拽区域
		//minImageWidth: 50, //图片的最小宽度
		//minImageHeight: 50,//图片的最小高度
		//maxImageWidth: 1000,//图片的最大宽度
		//maxImageHeight: 1000,//图片的最大高度
		maxFileSize: 10240,//单位为kb，如果为0表示不限制文件大小
		'theme': 'fas',
		'language' : 'zh',
		allowedFileExtensions: ['jpg', 'png', 'gif']
	}).on("fileuploaded", function(event, data, previewId, index) {
		var code = data.response.code;//code 0代表上传成功
		var fileId = data.response.fileId;//回写文件id,完成表单绑定
		tempFile[previewId] = fileId;
		$('#' + previewId).attr('fileServerId', fileId);
		console.log('上传:previewId='+previewId+',fileId='+fileId);


	}).on("fileclear",function(event){
		//点击移除会触发 删除全部文件
		for(var previewId in tempFile){
			console.log('fileclear previewId=' + previewId+',fileId='+tempFile[previewId] );
		}
		//TODO 删除当前所有文件

	}).on('filesuccessremove', function(event,previewId, extr) {//点击删除后立即执行
		var fileId = $('#' + previewId).attr('fileServerId');
		console.log('删除:previewId='+previewId+',fileId='+fileId);
		//TODO 删除当前文件

	});

}
function update() {
	var fileIds = new Array();
	for(var previewId in tempFile){
		console.log('fileclear previewId=' + previewId+',fileId='+tempFile[previewId] );
		fileIds.push(tempFile[previewId]);
	}
	$.ajax({
		cache : true,
		type : "POST",
		url : ctx+"plat/shopInfo/update",
		data : $('#signupForm').serialize()+'&fileIds='+fileIds.join(),
		async : false,
		error : function(request) {
			parent.layer.alert("Connection error");
		},
		success : function(data) {
			if (data.code == 0) {
				parent.layer.msg("操作成功");
				parent.reLoad();
				var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
				parent.layer.close(index);

			} else {
				parent.layer.alert(data.msg)
			}

		}
	});

}

var mapLayer;
function openMap() {
	var height = $(window).height() - 50;
	mapLayer = layer.open({
		type : 2,
		title : '从地图选择位置',
		maxmin : true,
		shadeClose : false, // 点击遮罩关闭层
		area: ['935px', '680px'],
		content : ctx+'plat/shopInfo/testmap?lat='+$('#latValue').val()+'&lon='+$('#lonValue').val()+'&addr='+$('#shopAddr').val()
	});
}

function openWxUserView(){
	layer.open({
		type:2,
		title:"选择门店用户",
		area : [ '800px', '600px' ],
		content:ctx+"plat/merchantInfo/wxUserView"
	})
}

function closeMap(){
	layer.close(mapLayer);
}
function closeEdit(){
	var index = parent.layer.getFrameIndex(window.name);
	parent.layer.close(index);//关闭当前页
}
function validateRule() {
	var icon = "<i class='fa fa-times-circle'></i> ";
	$("#signupForm").validate({
		rules : {
			shopName : {
				required : true
			},
			platId : {
				required : true
			},
			provinceNum : {
				required : true
			},
			cityNum : {
				required : true
			},
			shopAddr : {
				required : true
			},
			shopFlag : {
				required : true
			},
			perPersonPrice : {
				required : false,
				isPositiveInt:true,
				max: 99999,
				min: 0
			}
		},
		messages : {

			shopName : {
				required : icon + "请输入门店名称"
			},
			uname : {
				required : icon + "请输入门店管理员姓名"
			},
			phone : {
				required : icon + "请输入门店管理员手机号"
			},
			platId : {
				required : icon + "请选择所属平台"
			},
			provinceNum : {
				required : icon + "请选择所属省"
			},
			cityNum : {
				required : icon + "请选择所属市"
			},
			shopAddr : {
				required : icon + "请设置门店地址"
			},
			shopFlag : {
				required : icon + "请选择平台状态"
			},
			perPersonPrice:{
				required : icon + "请输入人均价格,不能带小数"
			}
		},
		errorPlacement: function(error, element) {
			if (element[0].tagName && element[0].tagName.toLowerCase() == 'select'){
				error.appendTo(element.parent().parent());
			}else {
				error.appendTo(element.parent());
			}
		},
		success:function(lable){
			lable.parents(".tip").remove();
			console.log(lable);
		}
	})
}

function loadWxUser(openId,headimg){
	$("#wxOpenId").val(openId);
	$("#headimg").val(headimg);
	$("#nickName").val(openId);
}